//
//  YRHttpRequest.swift
//  qiubai
//
//  Created by Qingke on 16/5/26.
//  Copyright © 2016年 Qingke. All rights reserved.
//

import Foundation

class HttpRequest: NSObject {
    
    
    class func requestWithUrl(url_string: String, completionHandler:(data: AnyObject) -> Void)
    {
        //用NSsession发送请求返回值，用completionHandler 处理
        let url = NSURL(string: url_string)
        let rq = NSMutableURLRequest(URL: url!)
        rq.HTTPMethod = "GET"  //请求的方法，还可以请求的数据
        let session = NSURLSession(configuration: NSURLSessionConfiguration.ephemeralSessionConfiguration())
        let task = session.dataTaskWithRequest(rq, completionHandler:
            { (data, resp, error) in
                if error != nil {
                    print("Data request failed: \(error?.code)")   //这里的error表示的本地发送过去，http的错误。不是返回的json中的错误。
                    completionHandler(data: error!)
                    return
                }
                do {
                    let jsonData = (try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers)) as! NSDictionary
                    //异步处理json,这里用的是修改，调用方法的全局变量的方法实现交互。
                    dispatch_async(dispatch_get_main_queue(), {
                        completionHandler(data: jsonData)
                    })
                }catch {
                    print("解析错误")
                    //出现问题进行处理
                }
            })
        task.resume()
        
    
    }
    
}